package com.tn.dao.map;

import com.tn.controller.alarm.common.model.map.TruckInfoVO;
import com.tn.controller.alarm.common.model.vehicle.entity.TallyTaskInfoDO;
import com.tn.controller.alarm.common.model.vehicle.entity.VehicleInfoDO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

/**
 * 地图Dao
 *
 * @program: tn_aucy_java
 * @author: yangjiayao
 * @create: 2022/1/4
 */
@Repository
public interface IMapDao {
    /**
     * 查询货车信息
     *
     * @param tagId 标签ID
     * @return 货车信息
     */
    TruckInfoVO queryTruckInfo(@Param("tagId") String tagId);

    /**
     * 查询闸口图片
     *
     * @param truckId 货车ID
     * @param type    类型
     * @return 闸口图片
     */
    String queryGatePicture(@Param("truckId") int truckId, @Param("type") int type);

    /**
     * 查询磅房图片
     *
     * @param truckId 货车ID
     * @param times   过磅次数
     * @return 磅房图片
     */
    String queryWeightPicture(@Param("truckId") int truckId, @Param("times") int times);

    /**
     * 查询闸口名称
     *
     * @param truckId 货车ID
     * @param type    类型
     * @return 闸口名称
     */
    String queryGateName(@Param("truckId") int truckId, @Param("type") int type);

    /**
     * 查询商品
     *
     * @param license 车牌
     * @return 商品
     */
    String queryGoods(@Param("license") String license);

    /**
     * 查询标签ID
     *
     * @param license 车牌
     * @return 标签ID
     */
    String queryTagId(@Param("license") String license);

    /**
     * 查询装载车信息
     *
     * @param tagId 标签ID
     * @return 装载车信息
     */
    VehicleInfoDO queryVehicleInfo(@Param("tagId") String tagId);

    /**
     * 查询装载车理货任务
     *
     * @param vehicleId 装载车ID
     * @return 理货任务
     */
    TallyTaskInfoDO queryTallyTaskInfo(@Param("vehicleId") int vehicleId);

    /**
     * 查询货车信息
     *
     * @param truckId 货车ID
     * @return 货车信息
     */
    TruckInfoVO queryTruckInfoById(@Param("truckId") int truckId);
}
